#ifndef SPHERE_H_
#define SPHERE_H_

#include "../math/Vector.h"
#include "../generic/Object.h"
#include "../generic/Color.h"
#include "../math/Ray.h"

class Sphere : public Object
{
public:
	Sphere();
	Sphere(float radius, Color3f color);
	virtual ~Sphere();
	
	/* position of Object.h is the center of the sphere */
	float radius;
	Color3f color;
	
	/* hit */
	int TestHit(Ray3f ray, HitInfo* hit, int& count);
	int TestHitGeometry(Ray3f ray, Vector3f* hit, int& count);
};

#endif /*SPHERE_H_*/
